import { KuiRadioProps } from './type';
import { inject, PropType } from 'vue';
import { configProviderInjectionKey } from '../kui-config-provider/type';

export default {
	/**
	 * @zh 单选按钮标识
	 */
	value: {
		type: [String, Number, Boolean],
		default: ''
	},
	/**
	 * @zh 是否选中
	 */
	checked: {
		type: Boolean,
		default: false
	},
	/**
	 * @zh 是否禁用
	 */
	disabled: {
		type: Boolean,
		default: false
	},
	/**
	 * @zh 选中状态颜色
	 */
	activeColor: {
		type: String,
		default: 'primary'
	},
	/**
	 * @zh 非选中状态颜色
	 */
	inactiveColor: {
		type: String,
		default: 'grey'
	},
	/**
	 * @zh 图标大小
	 */
	iconSize: {
		type: Number,
		default: 36
	},
	/**
	 * @zh 选中状态图标
	 */
	activeIcon: {
		type: String,
		default: 'radio-checked2'
	},
	/**
	 * @zh 非选中状态图标
	 */
	inactiveIcon: {
		type: String,
		default: 'radio-unchecked'
	},
	/**
	 * 页面模式
	 */
	mode: {
		type: String as PropType<KuiRadioProps['mode']>,
		default: () => inject(configProviderInjectionKey, undefined)?.mode ?? 'light'
	}
}